The Hypergeometric Distribution

Random: unsigned int gsl_ran_hypergeometric (const gsl_rng * r, unsigned int n1, unsigned int n2, unsigned int t)
This function returns a random integer from the hypergeometric distribution. The probability distribution for hypergeometric random variates is,

p(k) =  C(n_1,k) C(n_2, t-k) / C(n_1 + n_2,k)

where C(a,b) = a!/(b!(a-b)!). The domain of k is max(0,t-n_2), ..., max(t,n_1).

Function: double gsl_ran_hypergeometric_pdf (unsigned int k, unsigned int n1, unsigned int n2, unsigned int t)
This function computes the probability p(k) of obtaining k from a hypergeometric distribution with parameters n1, n2, n3, using the formula given above.